package com.rmt.www.serviceImpl;

import java.util.List;

import com.rmt.www.constant.ArtifactType;
import com.rmt.www.dao.ArtifactDao;
import com.rmt.www.dao.DesignArtifactDao;
import com.rmt.www.dao.DesignArtifactRequestDao;
import com.rmt.www.dao.DesignArtifactHistoryDao;
import com.rmt.www.dao.FeatureArtifactDao;
import com.rmt.www.dao.FeatureArtifactHistoryDao;
import com.rmt.www.dao.ImplementationArtifactDao;
import com.rmt.www.dao.ImplementationArtifactRequestDao;
import com.rmt.www.dao.ProjectDao;
import com.rmt.www.dao.RequirementArtifactDao;
import com.rmt.www.dao.RequirementArtifactRequestDao;
import com.rmt.www.dao.TestArtifactDao;
import com.rmt.www.dao.TestArtifactRequestDao;
import com.rmt.www.dao.TraceabilityDao;
import com.rmt.www.dao.TraceabilityDaoV2;
import com.rmt.www.dao.UserDao;
import com.rmt.www.service.AdminReportService;
import com.rmt.www.vo.DesignArtifact;
import com.rmt.www.vo.DesignArtifactHistory;
import com.rmt.www.vo.FeatureArtifact;
import com.rmt.www.vo.FeatureArtifactHistory;
import com.rmt.www.vo.ImplementationArtifact;
import com.rmt.www.vo.ImplementationArtifactHistory;
import com.rmt.www.vo.Project;
import com.rmt.www.vo.RequirementArtifact;
import com.rmt.www.vo.RequirementArtifactHistory;
import com.rmt.www.vo.TestArtifact;
import com.rmt.www.vo.TestArtifactHistory;

public class AdminReportServiceImpl extends ArtifactDetailQueryServiceImpl implements AdminReportService {

	private UserDao userDao;
	private ProjectDao projectDao;
	private FeatureArtifactDao featureArtifactDao;
	private RequirementArtifactDao requirementArtifactDao;
	private DesignArtifactDao designArtifactDao;
	private ImplementationArtifactDao implementationArtifactDao;
	private TestArtifactDao testArtifactDao;
	private TraceabilityDaoV2 traceabilityDaoV2;
	
	
	public Project getProject(int pid) {
		Project project = projectDao.getProject(pid);
		project.set_ownername(userDao.getUser(project.getCreatorId()).getName());
		return project;
	}
	
	public UserDao getUserDao() {
		return userDao;
	}
	public void setUserDao(UserDao userDao) {
		this.userDao = userDao;
	}
	public ProjectDao getProjectDao() {
		return projectDao;
	}
	public void setProjectDao(ProjectDao projectDao) {
		this.projectDao = projectDao;
	}
	public FeatureArtifactDao getFeatureArtifactDao() {
		return featureArtifactDao;
	}
	public void setFeatureArtifactDao(FeatureArtifactDao featureArtifactDao) {
		this.featureArtifactDao = featureArtifactDao;
	}
	public RequirementArtifactDao getRequirementArtifactDao() {
		return requirementArtifactDao;
	}
	public void setRequirementArtifactDao(
			RequirementArtifactDao requirementArtifactDao) {
		this.requirementArtifactDao = requirementArtifactDao;
	}
	public DesignArtifactDao getDesignArtifactDao() {
		return designArtifactDao;
	}
	public void setDesignArtifactDao(DesignArtifactDao designArtifactDao) {
		this.designArtifactDao = designArtifactDao;
	}
	public ImplementationArtifactDao getImplementationArtifactDao() {
		return implementationArtifactDao;
	}
	public void setImplementationArtifactDao(
			ImplementationArtifactDao implementationArtifactDao) {
		this.implementationArtifactDao = implementationArtifactDao;
	}
	public TestArtifactDao getTestArtifactDao() {
		return testArtifactDao;
	}
	public void setTestArtifactDao(TestArtifactDao testArtifactDao) {
		this.testArtifactDao = testArtifactDao;
	}
	public TraceabilityDaoV2 getTraceabilityDaoV2() {
		return traceabilityDaoV2;
	}
	public void setTraceabilityDaoV2(TraceabilityDaoV2 traceabilityDaoV2) {
		this.traceabilityDaoV2 = traceabilityDaoV2;
	}
}
